package cn.nkpro.elcube.docengine.gen;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import java.io.Serializable;

@JsonIgnoreProperties(ignoreUnknown = true)
@JsonInclude(JsonInclude.Include.NON_NULL)
public class FinVoucherI extends FinVoucherIKey implements Serializable {
    /**
     * 记账对象单据ID
     *
     * @mbggenerated
     */
    private String targetDocId;

    /**
     * 业务科目key
     *
     * @mbggenerated
     */
    private String businessKey;

    /**
     * 凭证类别
     *
     * @mbggenerated
     */
    private String voucherKind;

    /**
     * 会计科目
     *
     * @mbggenerated
     */
    private String voucherSubject;

    /**
     * 会计科目描述
     *
     * @mbggenerated
     */
    private String voucherSubjectDesc;

    /**
     * 记账日期
     *
     * @mbggenerated
     */
    private String accountDate;

    /**
     * 会计年度
     *
     * @mbggenerated
     */
    private String accountYear;

    /**
     * 会计期间
     *
     * @mbggenerated
     */
    private String accountPeriod;

    /**
     * 货币类型
     *
     * @mbggenerated
     */
    private String currType;

    /**
     * 贷方金额
     *
     * @mbggenerated
     */
    private Double creditAmount;

    /**
     * 借方金额
     *
     * @mbggenerated
     */
    private Double debitAmount;

    /**
     * 摘要
     *
     * @mbggenerated
     */
    private String explanation;

    /**
     * 现金流量key
     *
     * @mbggenerated
     */
    private String cashFlow;

    /**
     * 现金流量方向
     *
     * @mbggenerated
     */
    private Integer cashFlowSide;

    /**
     * 状态
     *
     * @mbggenerated
     */
    private Integer state;

    /**
     * UPDATED_TIME
     *
     * @mbggenerated
     */
    private Long updatedTime;

    /**
     * 扩展数据
     *
     * @mbggenerated
     */
    private String extendedData;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database table nk_fin_voucher_i
     *
     * @mbggenerated
     */
    private static final long serialVersionUID = 1L;

    /**
     * 获取 记账对象单据ID
     *
     * @return 记账对象单据ID
     *
     * @mbggenerated
     */
    @cn.nkpro.elcube.annotation.CodeFieldNotes("记账对象单据ID")
    public String getTargetDocId() {
        return targetDocId;
    }

    /**
     * 设置 记账对象单据ID
     *
     * @return 记账对象单据ID
     *
     * @mbggenerated
     */
    public void setTargetDocId(String targetDocId) {
        this.targetDocId = targetDocId;
    }

    /**
     * 获取 业务科目key
     *
     * @return 业务科目key
     *
     * @mbggenerated
     */
    @cn.nkpro.elcube.annotation.CodeFieldNotes("业务科目key")
    public String getBusinessKey() {
        return businessKey;
    }

    /**
     * 设置 业务科目key
     *
     * @return 业务科目key
     *
     * @mbggenerated
     */
    public void setBusinessKey(String businessKey) {
        this.businessKey = businessKey;
    }

    /**
     * 获取 凭证类别
     *
     * @return 凭证类别
     *
     * @mbggenerated
     */
    @cn.nkpro.elcube.annotation.CodeFieldNotes("凭证类别")
    public String getVoucherKind() {
        return voucherKind;
    }

    /**
     * 设置 凭证类别
     *
     * @return 凭证类别
     *
     * @mbggenerated
     */
    public void setVoucherKind(String voucherKind) {
        this.voucherKind = voucherKind;
    }

    /**
     * 获取 会计科目
     *
     * @return 会计科目
     *
     * @mbggenerated
     */
    @cn.nkpro.elcube.annotation.CodeFieldNotes("会计科目")
    public String getVoucherSubject() {
        return voucherSubject;
    }

    /**
     * 设置 会计科目
     *
     * @return 会计科目
     *
     * @mbggenerated
     */
    public void setVoucherSubject(String voucherSubject) {
        this.voucherSubject = voucherSubject;
    }

    /**
     * 获取 会计科目描述
     *
     * @return 会计科目描述
     *
     * @mbggenerated
     */
    @cn.nkpro.elcube.annotation.CodeFieldNotes("会计科目描述")
    public String getVoucherSubjectDesc() {
        return voucherSubjectDesc;
    }

    /**
     * 设置 会计科目描述
     *
     * @return 会计科目描述
     *
     * @mbggenerated
     */
    public void setVoucherSubjectDesc(String voucherSubjectDesc) {
        this.voucherSubjectDesc = voucherSubjectDesc;
    }

    /**
     * 获取 记账日期
     *
     * @return 记账日期
     *
     * @mbggenerated
     */
    @cn.nkpro.elcube.annotation.CodeFieldNotes("记账日期")
    public String getAccountDate() {
        return accountDate;
    }

    /**
     * 设置 记账日期
     *
     * @return 记账日期
     *
     * @mbggenerated
     */
    public void setAccountDate(String accountDate) {
        this.accountDate = accountDate;
    }

    /**
     * 获取 会计年度
     *
     * @return 会计年度
     *
     * @mbggenerated
     */
    @cn.nkpro.elcube.annotation.CodeFieldNotes("会计年度")
    public String getAccountYear() {
        return accountYear;
    }

    /**
     * 设置 会计年度
     *
     * @return 会计年度
     *
     * @mbggenerated
     */
    public void setAccountYear(String accountYear) {
        this.accountYear = accountYear;
    }

    /**
     * 获取 会计期间
     *
     * @return 会计期间
     *
     * @mbggenerated
     */
    @cn.nkpro.elcube.annotation.CodeFieldNotes("会计期间")
    public String getAccountPeriod() {
        return accountPeriod;
    }

    /**
     * 设置 会计期间
     *
     * @return 会计期间
     *
     * @mbggenerated
     */
    public void setAccountPeriod(String accountPeriod) {
        this.accountPeriod = accountPeriod;
    }

    /**
     * 获取 货币类型
     *
     * @return 货币类型
     *
     * @mbggenerated
     */
    @cn.nkpro.elcube.annotation.CodeFieldNotes("货币类型")
    public String getCurrType() {
        return currType;
    }

    /**
     * 设置 货币类型
     *
     * @return 货币类型
     *
     * @mbggenerated
     */
    public void setCurrType(String currType) {
        this.currType = currType;
    }

    /**
     * 获取 贷方金额
     *
     * @return 贷方金额
     *
     * @mbggenerated
     */
    @cn.nkpro.elcube.annotation.CodeFieldNotes("贷方金额")
    public Double getCreditAmount() {
        return creditAmount;
    }

    /**
     * 设置 贷方金额
     *
     * @return 贷方金额
     *
     * @mbggenerated
     */
    public void setCreditAmount(Double creditAmount) {
        this.creditAmount = creditAmount;
    }

    /**
     * 获取 借方金额
     *
     * @return 借方金额
     *
     * @mbggenerated
     */
    @cn.nkpro.elcube.annotation.CodeFieldNotes("借方金额")
    public Double getDebitAmount() {
        return debitAmount;
    }

    /**
     * 设置 借方金额
     *
     * @return 借方金额
     *
     * @mbggenerated
     */
    public void setDebitAmount(Double debitAmount) {
        this.debitAmount = debitAmount;
    }

    /**
     * 获取 摘要
     *
     * @return 摘要
     *
     * @mbggenerated
     */
    @cn.nkpro.elcube.annotation.CodeFieldNotes("摘要")
    public String getExplanation() {
        return explanation;
    }

    /**
     * 设置 摘要
     *
     * @return 摘要
     *
     * @mbggenerated
     */
    public void setExplanation(String explanation) {
        this.explanation = explanation;
    }

    /**
     * 获取 现金流量key
     *
     * @return 现金流量key
     *
     * @mbggenerated
     */
    @cn.nkpro.elcube.annotation.CodeFieldNotes("现金流量key")
    public String getCashFlow() {
        return cashFlow;
    }

    /**
     * 设置 现金流量key
     *
     * @return 现金流量key
     *
     * @mbggenerated
     */
    public void setCashFlow(String cashFlow) {
        this.cashFlow = cashFlow;
    }

    /**
     * 获取 现金流量方向
     *
     * @return 现金流量方向
     *
     * @mbggenerated
     */
    @cn.nkpro.elcube.annotation.CodeFieldNotes("现金流量方向")
    public Integer getCashFlowSide() {
        return cashFlowSide;
    }

    /**
     * 设置 现金流量方向
     *
     * @return 现金流量方向
     *
     * @mbggenerated
     */
    public void setCashFlowSide(Integer cashFlowSide) {
        this.cashFlowSide = cashFlowSide;
    }

    /**
     * 获取 状态
     *
     * @return 状态
     *
     * @mbggenerated
     */
    @cn.nkpro.elcube.annotation.CodeFieldNotes("状态")
    public Integer getState() {
        return state;
    }

    /**
     * 设置 状态
     *
     * @return 状态
     *
     * @mbggenerated
     */
    public void setState(Integer state) {
        this.state = state;
    }

    /**
     * 获取 UPDATED_TIME
     *
     * @return UPDATED_TIME
     *
     * @mbggenerated
     */
    @cn.nkpro.elcube.annotation.CodeFieldNotes("UPDATED_TIME")
    public Long getUpdatedTime() {
        return updatedTime;
    }

    /**
     * 设置 UPDATED_TIME
     *
     * @return UPDATED_TIME
     *
     * @mbggenerated
     */
    public void setUpdatedTime(Long updatedTime) {
        this.updatedTime = updatedTime;
    }

    /**
     * 获取 扩展数据
     *
     * @return 扩展数据
     *
     * @mbggenerated
     */
    @cn.nkpro.elcube.annotation.CodeFieldNotes("扩展数据")
    public String getExtendedData() {
        return extendedData;
    }

    /**
     * 设置 扩展数据
     *
     * @return 扩展数据
     *
     * @mbggenerated
     */
    public void setExtendedData(String extendedData) {
        this.extendedData = extendedData;
    }
}